<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.prime.com.tr/ui"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core">

    <f:metadata>
        <f:event type="preRenderView" listener="#{sessionManaged.validar_session('wfrmPerfilMenu')}" />
    </f:metadata>
    <body>
        <ui:composition template="./../../../template.xhtml">
            <ui:define name="main_content">
                <ui:include src="/web-pages/SEGURIDAD/HELP/wfrmHelp_Roles.xhtml">
                    <ui:param name="toolBarWidth" value="1000"/>
                    <ui:param name="toolBarTitleWidth" value="950"/>
                    <ui:param name="title" value="Perfil por Men&uacute;"/>
                </ui:include>

                <div align="left">
                    <p:panel header="Informaci&oacute;n Men&uacute; por Usuario" style="width: 1000px">
                        <h:form id="mensaje">
                            <p:growl id="gMensaje" life="1000"/>
                        </h:form>

                        <br/>
                        <h:form id="perfilMenu2">
                            <p:panel header="PERMISOS ESPECIALES" style="width: inherit" toggleable="true">
                                <f:facet name="header">
                                    <h:outputText value="PERMISOS ESPECIALES"/><p:spacer height="10" width="50"/>

                                    <h:selectBooleanCheckbox value="#{perfilMenuManaged.selectedEncaPerfilMenu.filtro_all_TipoMenu}" />
                                    <h:outputText value="Seleccionar Todos los Tipo de M&eacute;nu"/>

                                    <p:spacer height="10" width="50"/>
                                    <h:selectBooleanCheckbox value="#{perfilMenuManaged.selectedEncaPerfilMenu.filtro_all_Perfiles}" />
                                    <h:outputText value="Seleccionar Todos los Perfiles"/>
                                </f:facet>

                                <h:panelGrid id="pPermisosEspecial" columns="6">
                                    <h:outputText value="Tipo Men&uacute;"/>
                                    <h:selectOneMenu value="#{perfilMenuManaged.selectedEncaPerfilMenu.menu.tipoMenu.codigo_tm}" style="width: 250px">
                                        <f:selectItems value="#{perfilMenuManaged.tipoMenu}" var="tm" itemLabel="#{tm.nombre_tm}" itemValue="#{tm.codigo_tm}" />
                                    </h:selectOneMenu>

                                    <h:outputText value="Perfil"/>
                                    <h:selectOneMenu value="#{perfilMenuManaged.selectedEncaPerfilMenu.perfil.codigo_p}" style="width: 250px">
                                        <f:selectItems value="#{perfilMenuManaged.perfiles}" var="p" itemLabel="#{p.nombre_p}" itemValue="#{p.codigo_p}" />
                                        <p:ajax listener="#{perfilMenuManaged.llenar_PerfilMenu}" update="grid:table mensaje" />
                                    </h:selectOneMenu>

                                    <h:outputText value="Activo"/>
                                    <h:selectBooleanCheckbox value="#{perfilMenuManaged.selectedEncaPerfilMenu.filtro_estado_pm}" style="width: 15px" />
                                </h:panelGrid>

                                <center>
                                    <h:panelGrid id="cmdButtones" columns="3" cellpadding="5" style="width:inherit">
                                        <p:commandButton value="#{sms.guardar}" onclick="cmdConfirm.show()" image="ui-icon ui-icon-check" />
                                        <p:commandButton value="#{sms.limpiar}" actionListener="#{limpiarManaged.limpiar}" update="perfilMenu2:pPermisosEspecial grid" />
                                        <p:confirmDialog message="#{sms.iAlmacenada}" header="#{sms.guardar}" severity="alert" widgetVar="cmdConfirm">
                                            <p:commandButton value="Si" actionListener="#{perfilMenuManaged.completeTransaccion}" oncomplete="cmdConfirm.hide()" update="grid mensaje"/>
                                            <p:commandButton value="No" onclick="cmdConfirm.hide()"/>
                                        </p:confirmDialog>
                                    </h:panelGrid>
                                </center>
                            </p:panel>

                        </h:form>

                        <h:form id="grid">
                            <p:dataTable id="table" value="#{perfilMenuManaged.perfilMenu}" var="row" rows="15"
                                         paginator="true" paginatorPosition="bottom" selectionMode="single" selection="#{perfilMenuManaged.selectedDetaPerfilMenu}"
                                         emptyMessage="#{sms.TableEmptyMessage}" >
                                <f:facet name="header">
                                    <h:outputText value="Lista de Roles por Usuario"/>
                                </f:facet>
                                <p:column headerText="Orden" filterBy="#{row.menu.orden_m}" sortBy="#{row.menu.orden_m}" filterMatchMode="contains" style="width: 85px">
                                    <h:outputText value="#{row.menu.orden_m}" />
                                </p:column>

                                <p:column headerText="Tipo Men&uacute;" filterBy="#{row.menu.nombre_m}" sortBy="#{row.menu.nombre_m}" filterMatchMode="contains" style="width: 200px">
                                    <h:outputText value="#{row.menu.nombre_m}" />
                                </p:column>
                                <p:column headerText="Descripci&oacute;n" filterBy="#{row.menu.descripcion_m}" sortBy="#{row.menu.descripcion_m}" filterMatchMode="contains" style="width: 400px">
                                    <h:outputText value="#{row.menu.descripcion_m}"/>
                                </p:column>
                                <p:column headerText="Activo" style="width: 50px" filterBy="#{row.estado_pm}" sortBy="#{row.estado_pm}">
                                    <h:selectBooleanCheckbox id="visible" value="#{row.filtro_estado_pm}" style="width: 50px">
                                        <f:selectItems value="#{row.filtro_estado_pm}" />
                                        <p:ajax listener="#{perfilMenuManaged.selectAllChanges(row)}" update="mensaje" />
                                    </h:selectBooleanCheckbox>
                                </p:column>
                            </p:dataTable>
                        </h:form>
                    </p:panel>
                </div>
            </ui:define>

        </ui:composition>

    </body>
</html>
